<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        /** 
         * 构造函数可以是函数表达式
         * 也可以是函数声明
         * let Person = function () {}
        */
        function Person() { };
        console.log(typeof Person.prototype);
        console.log(Person.prototype);
        /** 
         * 构造函数有一个prototype属性引用其原型对象
         * 而这个原型对象也有一个constructor属性，引用这个构造函数
        */
        console.log(Person.prototype.constructor === Person);
        /** 
         * 正常的原型链都会终止于object的原型对象
         * Object 原型的原型是 null
        */
        console.log(Object.prototype);
        console.log(Person.prototype.__proto__);
        console.log(Person.prototype.__proto__.__proto__);
    </script>
</body>

</html>